package cn.edu.scau.cmi.ema.dao;

import java.util.Set;

import org.springframework.dao.DataAccessException;
import cn.edu.scau.cmi.ema.domain.*;
import cn.edu.scau.cmi.ema.domain.base.CmiPagination;
import java.math.BigDecimal;
import java.util.Calendar;

public interface FoodsaleaddressDAO extends JpaDao<Foodsaleaddress> {

	public Foodsaleaddress findFoodsaleaddressById(Integer id) throws DataAccessException;

	public Foodsaleaddress findFoodsaleaddressById(Integer id, int startResult, int maxRows) throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByName(String name) throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByName(String name, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByNameContaining(String name_1) throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByNameContaining(String name_1, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByDate(Calendar date) throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByDate(Calendar date, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByPrice(BigDecimal price) throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByPrice(BigDecimal price, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByDescription(String description) throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByDescription(String description, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByDescriptionContaining(String description_1)
			throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddressByDescriptionContaining(String description_1, int startResult,
			int maxRows) throws DataAccessException;

	public Foodsaleaddress findFoodsaleaddressByPrimaryKey(Integer id) throws DataAccessException;

	public Foodsaleaddress findFoodsaleaddressByPrimaryKey(Integer id, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddresssByIds(Set<Integer> ids) throws DataAccessException;

	public Set<Foodsaleaddress> findAllFoodsaleaddresss() throws DataAccessException;

	public Set<Foodsaleaddress> findAllFoodsaleaddresss(int startResult, int maxRows) throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddresssByAddress(Integer addressId, int start, int max);

	public Set<Foodsaleaddress> findFoodsaleaddresssByFood(Integer foodId, int start, int max);

	public Set<Foodsaleaddress> findFoodsaleaddresssByUnit(Integer unitId, int start, int max);

	public Set<Foodsaleaddress> findFoodsaleaddressByCompositeProperities(String sql, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodsaleaddress> findFoodsaleaddresssByDetachedCriteria(CmiPagination page) throws DataAccessException;

	public Foodsaleaddress findFoodsaleaddressByPhysicalPrimaryKey(Integer foodId, Integer addressId, Calendar date)
			throws DataAccessException;

	public Foodsaleaddress findFoodsaleaddressByPhysicalPrimaryKey(Integer foodId, Integer addressId, Calendar date,
			int startResult, int maxRows) throws DataAccessException;
}
